package org.x.chat.until;


import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * 会话工具类
 */
public class SessionKit {

    /**
     * 会话ID到用户ID的映射
     */
    private static final Map<String, Long> sessionIdToUserIdMap = new ConcurrentHashMap<>();

    /**
     * 添加会话
     * @param sessionId 会话ID
     * @param userId 用户ID
     */
    public static void addSession(String sessionId, Long userId) {
        sessionIdToUserIdMap.put(sessionId, userId);
    }

    /**
     * 获取用户ID
     * @param sessionId 会话ID
     * @return 用户ID
     */
    public static Long getUserId(String sessionId) {
        return sessionIdToUserIdMap.get(sessionId);
    }

    /**
     * 移除会话
     * @param sessionId 会话ID
     */
    public static void removeSession(String sessionId) {
        sessionIdToUserIdMap.remove(sessionId);
    }

    /**
     * 获取所有会话
     * @return 会话ID到用户ID的映射
     */
    public static Map<String, Long> getAllSessions() {
        return sessionIdToUserIdMap;
    }

    /**
     * 清除所有会话
     */
    public static void clearAllSessions() {
        sessionIdToUserIdMap.clear();
    }

}
